Wireless communication systems typically comprise a number of mobile "user stations" or "handsets" and a number of stationary or fixed "base stations" which are capable communicating with each other. The base stations and user stations may communicate using frequency division multiple access (FDMA), wherein transmissions are distinguished by using different assigned frequencies; time division multiple access (TDMA), wherein transmissions are distinguished according to assigned time slots within a time frame; code division multiple access (CDMA), wherein transmissions are distinguished according to different assigned codes; or various combinations thereof.
One type of communication used in wireless applications is spread spectrum communication, wherein the bandwidth of the signal being transmitted generally exceeds the bandwidth required to transmit the data being sent. In spread spectrum communication, a data signal is typically modulated with a pseudo-random chip code to generate a transmitted signal spread over a relatively wide bandwidth. At the receiver the received spread spectrum signal is despread in order to recover the original data. One method of despreading of the spread spectrum signal is by correlating the received signal with a reference code matching the pseudo-noise code used by the transmitter to transmit the data. After initial correlation is achieved, in many systems it is necessary to track the incoming signal so as to maintain synchronization and keep it time-aligned with the local reference code to allow continued despreading of the received signal.
In order to carry out communication between a base station and a user station, a communication link must first be established. In a TDMA system, a communication link may comprise, e.g., a time slot having a forward link portion and a reverse link portion wherein a base station and a user station exchange communications in time division duplex. Establishment of the communication link can be difficult in a spread-spectrum TDMA communication system, due to the length of time that may be required to synchronize the transmitter and the receiver as well as the relative brevity of the time slot within which synchronization can take place.
In order to assist rapid synchronization of communication in spread spectrum and other communication systems, a preamble code preceding an information message may be used. A preamble code may comprise a relatively easily identifiable code sequence that marks the start of the information message and thereby allows the transmitter and receiver to synchronize. The receiver searches for the preamble code and, after locating it, knows when to expect the remaining information message and what timing adjustments may need to be made for optimum correlation of the information message.
Use of a preamble code can be particularly advantageous in a TDMA system because of the intermittent nature of the periodic transmissions between a base station and the user stations, which may require re-synchronization each time frame or series of time frames. Because the length of each burst is inherently limited by the duration of a time slot (or time slots), information is transmitted to and from a given user station in a TDMA system periodically over a series of time frames, with the base station and user station typically communicating only once per time frame, during a specified time slot. Due to the periodic nature of TDMA transmissions over a given link, the base station and the user station using the link have to look for the intermittent messages sent to them, which may be separated in time by an entire time frame or even more (e.g., several time frames) in some cases.
The fact that the user stations can be mobile may cause the periodic transmissions to drift within the allocated time slot. In addition, there is the possibility of drift between transmitter and receiver clocks. Thus, the receiver may not know precisely at what point the incoming burst will be received, although in some cases the expected time of arrival may be narrowed down to within a predefined window around the start of the time slot. When the receiver is waiting for its designated message, it may receive extraneous messages from nearby users of the same frequency spectrum or neighboring frequency spectrum, or may otherwise receive interference or noise and mistakenly interpret it as part of the message designated for it. A preamble code helps minimize possible misidentification of noise or interference as a valid message by assisting in the detection of the start of a designated burst. To prevent confusion at the user station, the preamble code for a given user station must be distinguished from the preamble codes as well as any other codes that may be targeted to any other the user station (or to the base station) during a time slot when the given user station is to communicate with the base station.
A preamble code may need to be identified rapidly, such as where a time slot is relatively short. This requirement generally suggests the use of short preamble codes. At the same time, a preamble code is preferably resistant to noise, interference and multipath effects, as well as false alarms due to autocorrelation peaks and cross-correlations, so as to ensure the highest probability of proper detection and identification of the preamble code at the receiver. If a preamble code is not properly identified by the receiver, the entire information message for the burst being sent may be lost.
One option to increase likelihood of preamble code detection is to increase the power of the transmitted preamble code over that of the transmit power for the information message, thereby increasing signal-to-noise ratio of the transmitted preamble code. While increasing the transmit power for the preamble code may decrease sensitivity to noise and interference, higher power transmissions for preamble codes may unduly interfere with users of the same or neighboring frequency spectra. Moreover, in certain low power applications (such as various types of handsets), it may not be feasible to increase the transmission power of preamble codes. Even if feasible, increasing the transmit power could cause early depletion of battery charge for some mobile handsets.
Another option is to increase the length of the preamble code so as to provide better discrimination as against noise and other signals. However, merely elongating the preamble code generally leads to more complex synchronization filters and increases the time needed to detect the preamble code.
Accordingly, it would be advantageous to provide a preamble code well suited to a TDMA communication system or other communication system requiring rapid synchronization at the receiver. It would further be advantageous to provide such a preamble code while maintaining a relatively simple synchronization filter structure. It would further be advantageous to provide a preamble code having resistance to noise and interference, without necessarily requiring increased transmission power.
As a further consideration in preamble code design, a preamble code may be used for selection of an antenna channel in a system where antenna diversity is employed. The received signal quality of the preamble code is evaluated for each antenna branch, and the best antenna or set of antennas is selected to receive the information message. Thus, a preamble code is preferably constructed so as to be well suited for use in a system employing antenna diversity, and to allow relatively easy evaluation of received signal quality so as to facilitate antenna selection.